1. Field
The present disclosure relates generally to data processing and computing systems, and more particularly, to a software agent, system and method for backing up open files of a source control management repository.
2. Description of the Related Art
The IT world is in a constant state of flux with new technologies, applications and platforms being developed and evolving all the time. In this ever-changing environment, application development managers and Chief Information Officers need to eliminate as much risk as possible. Most organizations must manage or support complex multiplatform applications that span the enterprise, including the mainframe server. For example, an online ticketing program for an airline has a web front-end. Its browser-based interface is connected to a back-office application on a UNIX server that also interacts with a DB2 database on the mainframe. While the application has components on several different platforms, it is still considered a single application because it serves a single business purpose—managing airline ticketing processing.
Additionally, the teams working on these complex, multi-tiered projects may be deployed around the world to take advantage of “follow-the-sun development”. For example, at the end of their day, a team in California hands off its development projects to a team in Japan, who then turns it over to a third team in the UK, and that group turns it over to a team in New York and so on.
Add these trends to the fact that every application now has a web front-end—with all the associated HTML pages and web content—to capitalize on Internet-driven business opportunities, and it is clear that enterprise Change Control Management (CCM) solutions have emerged as essential infrastructure components in the enterprise-wide application development arena.
Change Control Management software provides life cycle management, source version control and configuration management capabilities. Conventional source control management products are designed to manage code changes as they are checked back into the source control repository. With today's distributed environments and multiple projects underway, developers have many work-in-progress (WIP) projects on their machines that do not make it back to the source control repositories for a long period of time. Every developer and organization is at risk for not managing what is outside the checked-in file repository.
Developers work on many projects that contain multiple files that are not checked back into the source control management software for a long time. Currently, developers have to manually remember the physical location from where the files were checked out and manually backup these files. Then, the developers have to remember the correlation between the physical locations of the files, the software packages they are associated with, and actual backed-up locations. With multiple machines per user and multiple projects per user, the problem of keeping track of the checked out files for all the different projects is a manual and very tedious process for a single developer and it is even harder to achieve this at an enterprise level.
Additionally, developers are at great risk of losing these unmanaged open or checked out files since they must be backed-up manually by each individual developer. Currently, developers manually backup any open files and manually keep track of the CM (control management) context (e.g., server name, server address, etc.), physical locations of these files and the manual maintenance of the backups.
Therefore, a need exists for techniques to allow users, developers and administrators to easily and conveniently manage checked out or open files from a source control repository. Furthermore, a need exists for techniques to automatically backup open files and their context.